import java.util.*;


public class MinNumberInRotateArray {
    /**
     * 旋转数组的最小数字
     * 代码中的类名、方法名、参数名已经指定，请勿修改，直接返回方法规定的值即可
     *
     * 
     * @param nums int整型一维数组 
     * @return int整型
     */
    public int minNumberInRotateArray (int[] nums) {
        int i = 0, j = nums.length - 1;
        while (i < j) {
            int mid = (i+j)/2;
            if (nums[mid] > nums[j]){
                i = mid + 1;//最小值在右边
            } else if (nums[mid] < nums[j]) {
                j = mid;//最小值在左边
            } else {
                j--;
            }
        }
        return nums[i];
    }
}